<!DOCTYPE html>
<html lang='en'>

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../vue.js"></script>
</head>

<body>
    <div id="app">
        <p>{{count}}</p>
        <button @click="count++">修改</button><br>
        <input type="text" name="firstName" v-model="firstName"><br>
        <input type="text" name="lastName" v-model="lastName">
        <!-- 计算属性是个属性不是函数 使用不需要调用 -->
        <p>姓名：{{getName}}</p>
    </div>
    <script>
        
        const vm = new Vue({
            el: '#app',
            data() {
                return {
                    count:0,
                    firstName:'',
                    lastName:'',
                }
            },
            // Vue中的computed配置中的属性被称作计算属性  计算属性可以监视内部使用的属性的变化 一旦内部的这些属性发生变化 就会重新计算

            // 计算属性的特点：监视一个或多个属性的变化 目的是得到一个值
            // 优点：只有在监视的属性发生变化的时候 计算属性才会重新计算 


            // 计算属性在初始化阶段就被执行了一次，后面只有它所依赖的属性发生变化时，它才会再次调用
            computed:{
                getName(){
                    console.log('getName函数被调用');
                    return this.firstName + '---' + this.lastName
                }
            }
        })
    </script>
</body>

</html>